/****************************************************************************
 *
 *  3DSTYPE.H
 *
 *  (C) Copyright 1997 by Autodesk, Inc.
 *
 *  This program is copyrighted by Autodesk, Inc. and is licensed to you under
 *  the following conditions.  You may not distribute or publish the source
 *  code of this program in any form.  You may incorporate this code in object
 *  form in derivative works provided such derivative works are (i.) are de-
 *  signed and intended to work solely with Autodesk, Inc. products, and (ii.)
 *  contain Autodesk's copyright notice "(C) Copyright 1995 by Autodesk, Inc."
 *
 *  AUTODESK PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS.  AUTODESK SPE-
 *  CIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS FOR
 *  A PARTICULAR USE.  AUTODESK, INC.  DOES NOT WARRANT THAT THE OPERATION OF
 *  THE PROGRAM WILL BE UNINTERRUPTED OR ERROR FREE.
 *
 ***************************************************************************/

#ifndef TYPE_3DS_H
#define TYPE_3DS_H

#include "SMARTALL.H"

/* Data types and definitions common to all object modules */

/* Public Defines */

/* Data Type Synonyms For Portability */

#define char3ds char
#define uchar3ds unsigned char
#define byte3ds char
#define ubyte3ds unsigned char
#define short3ds short int
#define ushort3ds unsigned short int
#define long3ds long int
#define ulong3ds unsigned long int
#define float3ds float
#define double3ds double
#define int3ds   int
#define void3ds void

/* End Public */

char3ds *strdup3ds(const char3ds *s1);
#define strdup(source) strdup3ds(source)

/* Unix fudges */
#ifdef SPARC
int strcmpi(char3ds *s1, char3ds *s2);
#define memcpy(dest, source, size) (void *)memcpy((char *)dest, (char *)source, size)
#define memset(dest, value, size) (void *)memset((char *)dest, value, size)
#endif

#ifndef NDEBUG
void assertfunc(int ex, char *msg, char *file, int line);
#define _myassert(ex, msg) assertfunc((ex), msg, __FILE__, __LINE__)
#define myassert(ex, msg) _myassert(ex, msg)
#else
#define _myassert(ex, msg)
#define myassert(ex,msg)
#endif
 

#endif

